In system management applications, a central system management server communicates with agents, the system management client application, installed on the distributed systems which are computers or simple devices. Depending on the type of distributed system, the agent executes a set of system management functions which may differ from one system to the next. The difference may come from the type of system, its capabilities and the part it plays in this distributed environment. For instance, a distributed system, which is a mono application server, will have to report usual system monitoring information to the system manager server and some reporting in relation with the specificity of the application. One other example is when the distributed system is a simple device, such as a Personal Digital Assistant (PDA), on which the system management capabilities are limited. The agents have to execute system management functionalities on the distributed devices, such as software distribution, workload scheduling or system monitoring. An agent configuration, which comprises software elements and data, may be installed on the distributed devices for execution of these functionalities. It is usually the responsibility of the administrator to distribute from the system Management Server the software configuration to each agent, according to the system management functionalities they have to support. These manual operations are long and need to be automated.
There is thus a first need for automating downloading of configurations to the distributed systems.
Furthermore, during these download sessions, the server and the network from the central site are kept busy by the administrator for a duration which may be very long, especially in large distributed environments.
In this context, there is also a need to improve the cost and time for distribution of configuration to agents on a large number of machines.
One solution is to load raw binaries on a machine (typically done by the Information Technology (IT) department) before the machine is deployed to production. This is not; however, the best approach because the machines need to be customized as not all machines will ultimately need the same configuration knowing that they will not use the same set of system management functionalities. Providing the same maximum configuration including all the possible functionalities would be too costly in terms of foot print. Some data center machines, for example, may need to be pre-loaded with the Task Execution functionality while end user machines may need Security Compliance and Software Distribution capabilities.
To limit the problem of cost and time of the manual operations of configuration downloading to distributed data storage subsystems, a peer to peer cloning of configuration is done automatically in the network of the distributed data storage systems. Each distributed system has an operating system which is a bootstrap component already installed and the data storage subsystem configuration will add the system data necessary to store the user data. The configuration is downloaded from a peer data storage subsystem in a pull or push mode.
Applying the same type of transfer of configuration between peers of the distributed network for system management will bring the same advantage of offloading the central server and the network and the cloning operation reduces errors and increases performance during the configuration stage.
However, there is still a need for an automatic transfer of the system management agent configurations to the distributed systems in such a way that each agent receives the configuration adapted to the system management functionalities it has to support according to its capabilities.